home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 6 / FM Towns Free Software Collection 6.iso / ms_dos / chkdrive / chkdrive.doc < prev    next >
Encoding:
Text File  |  1993-07-08  |  5.4 KB  |  112 lines

  1. /******************************************************************************
  2. **                                                                           **
  3. ** 《ソフト 名》  CHKDRIVE.COM   Ver. 1.02                                   **
  4. ** 《製作者 名》  青木  大(AAM)                                         **
  5. ** 《対応 機種》  MS-DOS全機種                                         **
  6. ** 《開発 言語》  386|ASM : 2.0                                              **
  7. ** 《開発 機種》  FM TOWNS CX   +   TownsOS V2.1 L20                         **
  8. **                                                                           **
  9. ******************************************************************************/
  10.  
  11. 《題    目》
  12.                    CHKDRIVE.COM      Ver. 1.02
  13. 《目    的》
  14.                    指定ドライブのレディ、ノットレディを判定する。
  15. 《使用方法》
  16.  
  17.     このプログラムは、指定ドライブの状態をリターンコードで返します。
  18.   つまり、バッチファイル内において指定ドライブのレディ、ノットレディを知る
  19.   ことが出来ます。
  20.     例えばRAMディスクをG:ドライブとすると、
  21.  
  22.          CHKDRIVE.COM G:
  23.          IF ERRORLEVEL 1 GOTO NOT_READY
  24.                RAMディスクが存在したときの処理
  25.          GOTO END
  26.  
  27.          :NOT_READY
  28.                RAMディスクが存在しないときの処理
  29.          :END
  30.  
  31.   のようにAUTOEXEC.BATに書き加えれば、RAMディスクが存在した場合のみプロ
  32.   グラムをコピーし、テンポラリディスクや環境変数TMENUをRAMディスクに設定
  33.   することが出来ます。
  34.     ちなみに私のAUTOEXEC.BATの一部は、次のようになっています。
  35.  
  36.         E:\APP\TOOL\COM\CHKDRIVE G:            ; ラムディスクはGドライブ
  37.         IF ERRORLEVEL 1 GOTO F_2
  38.  
  39.         REM ラムディスクが設定されている。
  40.         SET TMP=G:
  41.         SET TMENU=G:\TMENU
  42.         MD %TMENU%
  43.         COPY D:\TOWNS.ICN %TMENU% >nul
  44.         SET ICN=%TMENU%
  45.         COPY D:\TMENU.IF2 %TMENU% >nul
  46.         COPY D:\TMENU.WIN %TMENU% >nul
  47.         E:\APP\TOOL\EXE\CHG_ATT /H %TMENU%     ; %TMENU% をHiddenにする
  48.         GOTO F_1
  49.  
  50.         :F_2
  51.         REM ラムディスクが設定されていない。
  52.         SET TMP=F:
  53.         SET ICN=D:\
  54.         SET TMENU=D:\
  55.         :F_1
  56.         ECHO テンポラリディスクが %TMP% に設定されました。
  57.  
  58. 《理    論》
  59.  
  60.     このプログラムは、致命的エラーの中断アドレスを自分の中の処理ルーチンに
  61.   移したあとで、ファイル「CHKDRIVE.TMP」を新規作成しようとします。その際にエ
  62.   ラーが発生すればその時のエラーコードを、エラーが起きなければ0を返します。
  63.   またリターンコードは次のとおりです。
  64.  
  65.    +-----------+----------------------------------------------------------+
  66.    |  RETCODE  |                  エラー内容                              |
  67.    +-----------+----------------------------------------------------------+
  68.    |      0    |        ドライブが使用可能                                |
  69.    |      1    |        ライトプロテクトされたドライブに書き込もうとした  |
  70.    |      2    |        存在しないユニット                                |
  71.    |      3    |        ドライブがノットレディ                            |
  72.    |      4    |        コマンドが無効                                    |
  73.    |      5    |        データのCRCエラー                              |
  74.    |      6    |        コマンド・パケットの長さが不正                    |
  75.    |      7    |        シークエラー                                      |
  76.    |      8    |        メディアタイプが不正                              |
  77.    |      9    |        セクタが存在しない                                |
  78.    |     10    |        プリンタの用紙切れ                                |
  79.    |     11    |        書き込み不良                                      |
  80.    |     12    |        読み込み不良                                      |
  81.    |     13    |        一般的なディスク不良                              |
  82.    |     14    |        「CHKDRIVE.TMP」が既に存在する                      |
  83.    |     15    |        ファンクションエラー                              |
  84.    |    255    |        コマンドパラメータ異常                            |
  85.    +-----------+----------------------------------------------------------+
  86.  
  87.     これは、TEST.BATを実行してみればすぐに分かると思います。
  88.     私はMS-DOSは持っていないので詳しいことは分かりませんが、DOSの
  89.   3.1と5.1ではディスクの管理方法が違うらしくDOS5.1のドライブを
  90.   チェックに行くとまずいことが起きる可能性があるそうです。DOS5.1ユー
  91.   ザーの方にとっては当然のことかもしれませんが、くれぐれも注意してください。
  92.     またこのプログラムは、
  93.        FM-TOWNS CX  + Towns OS V2.1 L20
  94.        PC-9801F     + MS-DOS V3.3B
  95.        FMR-60       + MS-DOS V3.1 L30A
  96.   で動作確認をおこなっています。
  97.  
  98.     なおこのプログラムを使用したことによるファイル、ディスク等の破壊その他
  99.   の障害についての責任は負えませんので、ご容赦願います。
  100.     私は通信をしていないため、パソコン通信への登録はご遠慮ください。
  101.  
  102. 《最 後 に》
  103.  
  104.     フリコレは4から利用させてもらっていますが、参加するのは初めてです。本
  105.   当は、ゲームプログラムでの参加をしたかったのですが私の怠惰によって実現で
  106.   きず、実用プログラムでの参加とさせてもらいました。RESやバグレポート等もい
  107.   ただきたいのですが通信をしていない私は泣く泣く我慢することにします。
  108.     次回までには、ゲームプログラムとモデム、電話料金をそろえて参加したいと
  109.   思います。
  110.  
  111.                                                  Written by AAM.
  112.